package com.gc.business.service;

import com.gc.business.domain.UpkeepInfo;
import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import org.apache.ibatis.annotations.Param;

/**
 * 电梯保养 服务层
 * 
 * @author hruiyan
 * @date 2020-11-18
 */
public interface IUpkeepInfoService extends IService<UpkeepInfo> {
    /**
    * 列表查询
    */
    List<UpkeepInfo> list(UpkeepInfo upkeepInfo);


    /**
     * 通过审核状态查询记录列表
     * @param reviewType
     * @param companyId 公司ID
     * @return
     */
    List<UpkeepInfo> selectListByReviewType(UpkeepInfo upkeepInfo,Integer reviewType,Long companyId);

    /**
     * 通过提交人/审核人查询自己相关的记录列表
     * @param referUserId
     * @param auditUserId
     * @return
     */
    List<UpkeepInfo> selectListByReviewUserId(Long referUserId,Long auditUserId);

    /**
     * 联查根据ID详情需要的信息
     * @param upkeepId
     * @return
     */
    UpkeepInfo selectAllInfoById(Long upkeepId);

    /**
     * 查询如果需要保养的电梯进行保养
     * @return
     */
    int saveUpkeepBusinessInfo();
}
